The present disclosure relates generally to mobile devices, and in particular to techniques for manipulating mobile device user interfaces based on user interactions with those mobile devices.
A mobile device (also known as a handheld device, handheld computer, or simply handheld) can be a small, hand-held computing device, typically having a display screen with touch input and/or a miniature keyboard. A handheld computing device has an operating system (OS), and can run various types of application software, sometimes called “apps.” Most handheld devices can also be equipped with Wi-Fi, Bluetooth, and global positioning system (GPS) capabilities. Wi-Fi components can allow wireless connections to the Internet. Bluetooth components can allow wireless connections to other Bluetooth capable devices such as an automobile or a microphone headset. A camera or media player feature for video or music files can also be typically found on these devices along with a stable battery power source such as a lithium battery. Mobile devices often come equipped with a touchscreen interface that acts as both an input and an output device.
Mobile phones are a kind of mobile device. A mobile phone (also known as a cellular phone, cell phone, or hand phone) is a device that can make and receive telephone calls over a radio link while moving around a wide geographic area. A mobile phone can do so by connecting to a cellular network provided by a mobile phone operator, allowing access to the public telephone network. In addition to telephony, modern mobile phones can often also support a wide variety of other services such as text messaging, multimedia messaging service (MMS), e-mail, Internet access, short-range wireless communications (infrared, Bluetooth, etc.), business applications, gaming, and photography. Mobile phones that offer these and more general computing capabilities are often referred to as smart phones.
The Apple iPhone, in its various generations, is a smart phone. The iPhone includes a variety of components, such as a GPS, an accelerometer, a compass, and a gyroscope, which the iPhone's OS can use to determine the iPhone's current location, orientation, speed, and attitude. The iPhone's OS can detect events from these components and pass these events on to applications that are executing on the iPhone. Those applications can then handle the events in a manner that is custom to those applications. For example, using its built-in components, the iPhone can detect when it is being shaken, and can pass an event representing the shaking on to applications that have registered to listen for such an event. An application can respond to that event, for example, by changing the images that the iPhone is currently presenting on its touchscreen display.
Like many mobile devices, the iPhone, and its cousins the iPad and iPod Touch, come equipped with a touchscreen interface that can detect physical contact from a user of the mobile device and generate a corresponding event. For example, the iPhone can detect when a user has single-tapped the screen, double-tapped the screen, made a pinching motion relative to the screen, made a swiping motion across the screen, or made a flicking motion on the screen with his fingertips. Each such user interaction relative to the iPhone can cause a different kind of corresponding event to be generated for consumption by interested applications. Thus, the iPhone, iPad, and iPod Touch are able to detect and respond to a variety of physical interactions that a user can take relative those devices.
A mobile device's touchscreen is usually the primary mechanism by which the mobile device's user interacts with user interface elements (e.g., icons) that are displayed on the touchscreen. Thus, if a user desires to launch an application, the user might tap on the application's icon shown on the mobile device's display. Alternatively, if a user desires to move an icon from one location to another in the user interface, the user might press down on that icon's location on the display and then slide his fingertip across the touchscreen to the destination at which the user wants the icon to be placed. A user of a more conventional computer, such as a desktop computer, would likely use a separate pointing device such as a mouse to perform similar operations. Although both mechanisms work for manipulating user interface elements shown on a display, pointing devices, such as a mouse, often permit more refined movements and manipulations relative to those user interface elements than does a finger against a small touchscreen. The lack of ability to make highly refined selections relative to a mobile device's touchscreen arises largely from the relatively large contact area that the user's fingertip makes against the touchscreen. The lack of ability to make such highly refined selections is also a consequence of the user's fingertip obscuring much of the portion of the display that contains the user interface element with which the user wants to interact. User interface element manipulations performed via touchscreen can therefore be somewhat inaccurate. It can be very difficult for a user to select a desired pixel on the mobile device's display.